package cn.bird.storm.validated.paramcheck.model.stringscope;



import cn.bird.storm.validated.paramcheck.CheckAnnotation;
import cn.bird.storm.validated.paramcheck.model.CheckEnums;
import org.springframework.core.annotation.AliasFor;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
@CheckAnnotation(checkType = CheckEnums.STRING_SCOPE)
public @interface StringScope {
    @AliasFor(
            annotation = CheckAnnotation.class
    )
    String fieldName() default "";

    @AliasFor(
            annotation = CheckAnnotation.class
    )
    String value() default "";

    @AliasFor(
            annotation = CheckAnnotation.class
    )
    String[] organizes() default {};

    @AliasFor(
            annotation = CheckAnnotation.class
    )
    String[] stringScope() default {};


}
